# Variables relatives a la compilation :
CC				= gcc
DEBUG			= no
#
# Variables precisant l'arborescence des fichiers :
REP_EXE		= bin
REP_OBJ		= obj
REP_SRC		= src
#
# Variables definissant les fichiers a compiler :
EXEC			= Sat
EXEC_DEP		= $(addprefix $(REP_OBJ)/, Sat.o Chargement.o Traitement.o Matrices_creuses.o)
AVEC_HEADER	= $(addprefix $(REP_OBJ)/, Chargement.o Traitement.o Matrices_creuses.o)
SANS_HEADER	= $(addprefix $(REP_OBJ)/, Sat.o)
#
#
ifeq ($(DEBUG),yes)
	CFLAGS=-Wall -ansi -g
else
	CFLAGS=-Wall -ansi
endif
#
#
#	Regle par defaut :
#
$(EXEC) : $(REP_EXE)/$(EXEC)
	
#
# Regle principale
#	
$(REP_EXE)/$(EXEC) : $(EXEC_DEP)
	$(CC) -o $(@) $^
#
$(AVEC_HEADER) : $(REP_OBJ)/%.o : $(REP_SRC)/%.c $(REP_SRC)/%.h
	$(CC) -c $< $(CFLAGS) -o $(@)
#
$(SANS_HEADER) : $(REP_OBJ)/%.o : $(REP_SRC)/%.c
	$(CC) -c $< $(CFLAGS) -o $(@)
#
# on desactive la verification des dependances pour clean
.PHONY: clean
	
#
clean:
	rm -f $(REP_OBJ)/*.o $(REP_SRC)/*~ $(REP_EXE)/$(EXEC)
#
